package org.quincy.rock.comm.process;

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;

/**
 * <b>使用数组阻塞队列缓存的QueueMessageProcessService。</b>
 * <p><b>详细说明：</b></p>
 * <!-- 在此添加详细说明 -->
 * 无。
 * @version 1.0
 * @author quincy
 * @since 1.0
 */
public class ArrayQueueMessageProcessService extends BoundedQueueMessageProcessService {

	/**
	 * <b>构造方法。</b>
	 * <p><b>详细说明：</b></p>
	 * <!-- 在此添加详细说明 -->
	 * 无。
	 */
	public ArrayQueueMessageProcessService() {
		this(2, 1024);
	}

	/**
	 * <b>构造方法。</b>
	 * <p><b>详细说明：</b></p>
	 * <!-- 在此添加详细说明 -->
	 * 无。
	 * @param tc 线程数
	 * @param capacity 队列容量
	 */
	public ArrayQueueMessageProcessService(int tc, int capacity) {
		super(tc, capacity);
	}

	/** 
	 * createBlockingQueue。
	 * @see org.quincy.rock.comm.process.BoundedQueueMessageProcessService#createBlockingQueue(int)
	 */
	@Override
	protected BlockingQueue<QueueMessage> createBlockingQueue(int capacity) {
		return new ArrayBlockingQueue<>(capacity);
	}

}
